KMP算法应用------求解一个字符串的最长重复子串

问题描述:

          求解一个字符串的最长重复子串

问题解决:

下面是求解一个字符串的最长的重复子串的方法:

(1)从头开始截取字符串,每次取当前字符到最后一个字符构成的字符子串

(2)根据截取到的字符子串substring,使用上述的getNext()方法,可以求出Next[]数组的最大值,也就是substring中重复子串的最大长度

(3)根据(2)中的长度,求解出所有substring中重复子串的最大长度

具体实现:

(1)获取Next数组中当前字符串的最大重复长度

clipboard

(2)对于待求解字符串进行截取子串的操作,分别求解子串的最长重复子串长度以及位置

clipboard

(3)mian函数执行

clipboard

clipboard

posted @ 2013-04-29 16:13  罗松超  阅读(1708)  评论(0编辑  收藏  举报